วิธีการเปลี่ยน CPU และ Memory สำหรับ Windows Server 2019 บน EC2
ครั้งนี้ ผมจะมาแนะนำวิธีการเปลี่ยน CPU และ Memory สำหรับ Windows Server 2019 บน EC2
สิ่งที่ต้องมี
- สิ่งที่ต้องเตรียมมี 4 หัวข้อดังนี้
สำหรับคนที่รู้วิธีเริ่มต้นระบบ EC2 บน Windows สามารถข้ามไปที่หัวข้อ การเชื่อมต่อกับ Instance เพื่อเข้าใช้งาน Windows ผ่านไฟล์ RDP ได้เลย
การสร้าง Key Pairs
ก่อนที่จะทำการสร้าง EC2 Instance เราต้องสร้าง Key Pair ก่อนเสมอ ในบทความนี้จะสร้าง Key pair เป็นไฟล์.pem
ค้นหา?︎ EC2
» เลือกEC2
คลิกKey Pairs
คลิกCreate key pair
ใส่ชื่อที่ต้องการในช่อง Name เช่นwindows-tinnakorn
» คลิกCreate key pair
หลังจากสร้าง Key Pair เสร็จแล้ว ไฟล์.pem
จะถูกดาวน์โหลดมาที่คอมพิวเตอร์และชื่อไฟล์จะเปลี่ยนไปตามที่เราได้ตั้งชื่อไว้โดยอัตโนมัติ
การสร้าง Windows Instance
เมื่อสร้าง key pair เสร็จแล้ว ทำการสร้าง Windows Instance ได้เลย
ค้นหา?︎ EC2
» เลือกEC2
คลิกInstance
คลิกLaunch instances
Step 1: Choose an Amazon Machine Image (AMI) คือ Instance จะมีเซิร์ฟเวอร์ให้เลือกใช้มากมาย เช่น macOS, Red Hat, SUSE Linux, Ubuntu, Microsoft Windows, Debian เป็นต้น ซึ่งในบทความนี้จะใช้ Microsoft Windows Server 2019 Base ในการติดตั้ง
» คลิกSelect
Step 2: Choose an Instance Type คือ เราสามารถเลือก Type CPU Memory ที่จะนำไปใช้งานได้ตามความต้องการ ไม่ว่าเว็บไซต์จะมีขนาดเล็กหรือขนาดใหญ่ ก็สามารถเลือกขนาดความจุของ CPU Memory ได้ตามความเหมาะสม
» เลือก ■ Family =>t3a
| Type =>t3a.medium
| vCPUs =>2
| Memory =>4
(สามารถเลือกใช้งานได้ตามความต้องการ)
» คลิกNext: Configure Instance Details
Step 3: Configure Instance Details » คลิกNext: Add Storage
Step 4: Add Storage คือ ในส่วนของ Size (GiB) เราสามารถเพิ่ม Storage ได้ โดยค่าเริ่มต้นจะเป็น 30GB
» คลิกNext: Add Tags
Step 5: Add Tags » คือ การเพิ่มชื่อของ Tag ที่ต้องการใช้งาน
» คลิกAdd Tag
เพิ่ม Tag ตามนี้
» Key:Name
» Value:windows-tinnakorn
(ใส่ชื่ออะไรก็ได้)
» คลิกNext: Configure Security Group
Step 6: Configure Security Group คือ การตั้งค่า My IP เพื่อจำกัดการเชื่อมต่อ RDP จากทุกตำแหน่ง ซึ่งในส่วนนี้จะทำให้สามารถเชื่อมต่อ RDP จาก My IP (ที่อยู่ IP ปัจจุบันของคุณ) ได้เท่านั้น
» เปลี่ยนชื่อ Security group name เพื่อไม่ให้สับสนกับผู้ใช้ของคนอื่น เช่นwindows-tinnakorn
(ค่าเริ่มต้นจะเป็นชื่อlaunch-wizard-1
)
» เลือก Source:My IP
» คลิกReview and Launch
Step 7: Review Instance Launch » คลิกLaunch
ในส่วนของ POPUP ให้ทำตามขั้นตอนด้านล่าง
» Select a key pair:windows-tinnakorn | RSA
(ให้เลือก key pair ที่สร้างไว้ตอนแรก key pair)
» คลิก ☑ Checkbox
» คลิกLaunch Instances
ถ้ามีข้อความแจ้งเตือนสีเขียวเหมือนรูปภาพด้านล่างนี้ เท่ากับว่าการสร้าง Instance เสร็จสิ้น
จากนั้นให้คลิกView Instances
หลังจากสร้าง Instance เสร็จแล้ว ให้สังเกตที่ Status Checks จะเห็นว่ามีสถานะเป็น? Initializing
คือ Instance กำลังสตาร์ทระบบขึ้นมานั่นเอง
เมื่อ Instance มีสถานะเป็น✅ 2/2 checks passed
การสร้าง Instance ก็เสร็จสมบูรณ์
เมื่อสร้าง Instance เสร็จเรียบร้อยแล้ว ขั้นตอนต่อไปจะเป็นการเชื่อมโยง Elastic IP เข้ากับ EC2 Instance เพื่อ ไม่ให้ IP ของ Instance เกิดการเปลี่ยนแปลง
การเชื่อมโยง Elastic IP (EIP) เข้ากับ EC2 Instance
ขั้นตอนนี้เป็นการเชื่อมโยง Elastic IP เข้ากับ EC2 Instance คือการล็อก IP ที่เชื่อมต่อกับ Instance ในการใช้งานให้เป็น IP เดิมทุกครั้งที่มีการเปิดหรือปิด Instance ใหม่
ค้นหา?︎ EC2
» เลือกEC2
คลิกElastic IPs
คลิกAllocate Elastic IP address
คลิกAdd new tag
» Key:Name
» Value-optional:windows-tinnakorn
(ใส่ชื่อ Tag ตามต้องการ หรือจะใช้ชื่อเดียวกับ Instance ก็ได้)
» คลิกAllocate
เมื่อสร้าง EIP เสร็จแล้ว ต่อไปจะทำการเชื่อมโยง EIP เข้ากับ EC2 Instance
คลิกActions ▼
» เลือกAssociate Elastic IP address
เลือก Instance ตามนี้
» คลิกChoose an instance
ในช่องสีฟ้า แล้วเลือก Instance ของเราที่มีสถานะ running เท่านั้น เช่นi-***************** (windows-tinnakorn) - running
» คลิกAssociate
การเชื่อมโยง IP เสร็จเรียบร้อยแล้ว ต่อไปจะตรวจสอบ IP ที่หน้า Elastic IP และหน้า Instance
» คลิกที่ Allocated IPv4 address ตามรูป
หน้า Elastic IP
ให้ดูที่ Allocated IPv4 address นี้จะเหมือนกับ Public IPv4 address ของ Instance
หน้า Instance
ให้ดูที่ Public IPv4 address ของ Instance จะเห็นว่า IP จะถูกเปลี่ยนไปตาม Allocated IPv4 address ของ Elastic IP
ตัวอย่างเช่น ตอนแรก IP ของ Instance คือ❐ 11.222.333.44 | open address
และ IP ของ Elastic IP คือ❐ 54.179.80.76
ซึ่งหลังจากที่เชื่อมโยง IP เข้าด้วยกันแล้ว IP ของ Instance จะเปลี่ยนไปตาม Elsatic IP เป็น❐ 54.179.80.76 (windows-tinnakorn) | open address
ตามรูปภาพ
การเชื่อมต่อกับ Instance เพื่อเข้าใช้งาน Windows ผ่านไฟล์ RDP
คลิกInstance ID
ของเรา
คลิกConnect
ในส่วนของConnect to instance
จะเป็นการ Download remote desktop file และ Get password
» เลือกหัวข้อRDP client
» คลิกDownload remote desktop file
แล้วตัวไฟล์จะถูกดาวน์โหลดมาที่คอมพิวเตอร์และเป็นชื่อตาม Instance ของเราโดยอัตโนมัติ
คลิกGet password
ในส่วนของ Get Windows password ต้องรอประมาณ 5 นาทีจนกว่าการเริ่มต้นระบบของ Windows จะเสร็จสมบูรณ์ จึงจะสามารถทำขั้นตอนถัดไปได้
คลิกBrowse
(เป็นการเพิ่มไฟล์.pem
เข้ามายัง Instance เพื่อ Generate Password ขึ้นมา)
มาที่ไฟล์.pem
ที่สร้างมาจาก Key pair (ของผมจะเป็นชื่อwindows-tinnakorn.pem
) จากนั้นคลิกOpen
คลิกDecrypt Password
จะเห็นว่ามี Password ขึ้นมาแล้ว
กลับมาที่ไฟล์remote desktop
หรือไฟล์.rdp
ที่ดาวน์โหลดมาจาก Instance ของเรา (ของผมจะเป็นชื่อwindows-tinnakorn.rdp
) จากนั้นดับเบิ้ลคลิกที่ไฟล์ได้เลย
คลิกConnect
ในส่วนนี้เราต้องใส่ Password ที่ Generate ใน Instance เมื่อสักครู่นี้
กลับมาที่ Instance ของเรา จากนั้น Copy Password ตามรูปได้เลย
นำ Password ที่ Copy มาจาก Instance แล้ววางในช่อง Administrator เพื่อ Login เข้ามาใน Windows Server
คลิกYes
เมื่อทำการ Login เข้ามาแล้ว ก็จะมีหน้าตาเป็น Windows Server 2019 เหมือนกับรูปด้านล่าง
การเพิ่มขนาด Memory และ จำนวน CPU ของ Windows Server
EC2 ที่กำลังใช้งานด้วยt3a.medium
นี้ เราจะเปลี่ยนให้เป็นr5a.xlarge
Instance Type | CPU | Memory |
---|---|---|
t3a.medium | 2 | 4 GB |
r5a.xlarge | 4 | 32 GB |
โดยเพื่อนๆ สามารถดูหน่วย Memory และหน่วย CPU ของอินสแตนซ์ที่มีอยู่ใน EC2 ได้ว่ามีอินสแตนซ์ประเภทอะไรบ้าง สามารถดูที่ลิงก์นี้ได้เลย https://aws.amazon.com/th/ec2/pricing/on-demand/
เช่น เราต้องการเปลี่ยนจากt3a.medium
เป็นr5a.xlarge
ให้ตรวจสอบดังนี้
เลือกเป็นWindows
จากนั้นใส่ Instance type:r5a
ลงไปแล้วกด Enter ได้เลย
แล้วจะมีรายละเอียดที่เป็นของr5a
ขึ้นมา ถ้าต้องการใช้r5a.xlarge
ก็สามารถตรวจสอบรายละเอียดได้ที่หน้านี้เลย
1. ตรวจสอบหน่วย Memory และ CPU
การตรวจสอบ Memory และ CPU จะมี 3 วิธีดังนี้
1.1 ตรวจสอบที่หน้าจอ Desktop
Instance Size: t3a.medium Architecture: AMD64 Total Memory: 4096 MB
1.2 ตรวจสอบที่ระบบ System
คลิกที่ปุ่ม Windows แล้วเลือก⚙ Setting
เลือกSystem
เลือกAbout
แล้วทำการตรวจสอบ
Processor AMD EPYC 7571 2.20 GHz Installed RAM 4.00 GB
1.3 ตรวจสอบที่ Task Manager
คลิกที่ปุ่ม?︎ ค้นหา
แล้วใส่คำว่า?︎ Task Manager
จากนั้นคลิกที่Task Manager
คลิกที่More details
ตามรูป
เลือกหัวข้อPerformance
แล้วทำการตรวจสอบ
CPU AMD EPYC 7571 Virtual processors: 2 Memory 1.5/40 GB
เมื่อตรวจสอบเสร็จแล้ว ให้ออกจาก remote Desktop ตามนี้
เลื่อนไปด้านบนสุดจนแถบด้านบนเลื่อนลงมา จากนั้นคลิก✕ กากบาท
และคลิกOK
2. เปลี่ยน Type Instance
กลับมาที่หน้า EC2 Instance แล้วดูที่ Instance Type ที่ช่องสีน้ำเงิน จะเห็นว่าเป็นt3a.medium
จากนั้นทำการ Stop Instance โดยคลิกInstance state ▼
» เลือกStop instance
คลิกStop
(การ Stop instance จะใช้เวลาประมาณ 1-2 นาที)
เลือกAction ▼
» เลือกInstance settings ▶
» เลือกChange instance type
เลือก Instance type:r5a.xlarge ▼
» คลิกApply
ดูที่ Instance Type ที่ช่องสีน้ำเงินอีกครั้ง จะเห็นว่าเป็นr5a.xlarge
แล้ว
จากนั้นเลือกInstance state ▼
» เลือกStart instance
รอประมาณ 1-2 นาทีจนกว่าจะเป็นสถานะ✅ Running
เพื่อให้การ Start instance เสร็จสมบูรณ์
3. ตรวจสอบหน่วย Memory และ CPU อีกครั้ง
เข้ามาใน Windows Server เพื่อทำการตรวจสอบหน่วย Memory และ CPU อีกครั้ง
จากนั้นทำการตรวจสอบด้วย 3 วิธีดังนี้
3.1 ตรวจสอบที่หน้าจอ Desktop
Instance Size: r5a.xlarge Architecture: AMD64 Total Memory: 32768 MB
3.2 ตรวจสอบที่ระบบ System
Processor AMD EPYC 7571 2.20 GHz Installed RAM 32.0 GB (31.6 GB usable)
3.3 ตรวจสอบที่ Task Manager
CPU AMD EPYC 7571 Virtual processors: 4 Memory 1.7/31.6 GB
สรุป
ถ้าใช้ AWS Cloud ก็จะสามารถปรับเปลี่ยนขนาดของ Memory ได้ง่ายมากๆ มาลองปรับใช้ขนาด Memory ให้มีความเหมาะสมเพื่อลดต้นทุนในการใช้งานกันดูนะครับ